#include <iostream>
#include<vector>
using namespace std;
vector<int>num;
int main() {
    int n;
    int sum = 0;
    cin >> n;
    for (int i = 0; i < n; i++) {
        int a;
        cin >> a;
        num.push_back(a);
        sum += a;
    }
    //cout<<sum<<endl;
    if (sum % 2 != 0) {
        cout << "false";
        return 0;
    }
    int target = sum / 2;
    vector<int>dp(target + 1, 0);
    // dp[0]=0;
    for (int i = 0; i < n; i++) {
        for (int j = target; j >= num[i]; j--) {

            dp[j] = max(dp[j], dp[j - num[i]] + num[i]);
        }

    }

    if (dp[target] == target)cout << "true";
    else cout << "false";

}#include <iostream>
#include<unordered_map>
#include<cmath>
using namespace std;
bool ist(int x) {
    if (x == 1 || x == 0)return false;
    for (int i = 2; i < x; i++) {
        if (x % i == 0) {
            return false;
        }



    }

    return true;




}
int main() {
    unordered_map<char, int>st;
    string str;
    cin >> str;
    int maxn = 0;
    int minp = 0x3f3f3f3f;
    for (auto e : str) {
        if (maxn < ++st[e]) {
            maxn = st[e];
        }

    }
    for (auto e : st)
    {
        if (e.second < minp)
            minp = e.second;



    }

    //  cout<<maxn<<minp<<endl;
    int y = maxn - minp;
    if (ist(y)) {
        cout << "Lucky Word" << endl;
        cout << maxn - minp;

    }
    if (!ist(y))
    {
        cout << "No Answer" << endl; cout << 0;
    }
    // cout<<ist(y)<<endl;


}
#include<iostream>
#include<stack>
using namespace std;
void swap(int* a, int* b)
{
	int tmp = *a;
	*a = *b;
	*b = tmp;

}
//int quicksort(int*a,int left,int right)
//{
//	int key = left;
//	while (left < right)
//	{
//	 
//		while (left<right && a[right]>a[key])
//
//		{
//			right--;
//		}
//	   
//		while (left < right && a[left] < a[key])
//		{
//
//			left++;
//
//
//		}
//		swap(&a[left], &a[right]);
//
//	}
//	swap(&a[key], &a[left]);
//
//	return left;
//
//
//
//}
//int quicksort(int* a, int left, int right)
//{
//	//int pole = a[left];
//	int pole =left;
//	int key = a[left];
//	while (left < right)
//	{
//	 
//		while (left<right && a[right]>key)
//		{
//			right--;
//		}
//		 a[pole]= a[right];
//		pole = right;
//		while (left<right && a[left]<key)
//		{
//			left++;
//		}
//		a[pole]= a[left];
//		pole = left;
//	}
//	a[left] = key;
//	return left;
//
//
//}
int getmid(int* a, int left, int right)
{
	int mid = (left + right) / 2;
	if (a[left] < a[mid])
	{
		if (a[right] > a[mid])
			return mid;
		else if (a[right] < a[left])
			return left;
		else return right;
	}
	else   //a[left]>a[mid]
	{
		if (a[mid] > a[right])
			return mid;
		else if (a[right] > a[left])
			return left;
		else return right;



	}

}
int quicksort(int* a, int left, int right)
{
	//int keyi = left;
	int mid = getmid(a, left, right);
	swap(&a[mid], &a[left]);
	int keyi = left;
	int cur = left;
	int prev = left;
	while (cur <= right)
	{
		if (a[cur] < a[keyi])
		{
			prev++;
			swap(&a[cur], &a[prev]);


		}
		cur++;
	}
	swap(&a[prev], &a[keyi]);
	return prev;






}



void   _quicksort(int* a, int left, int right)
{
	/*if (left >= right)return;
	int mid = quicksort(a, left, right);
	_quicksort(a, left, mid - 1);
	_quicksort(a, mid+1, right);*/
	stack<int>st;
	st.push(left);
	st.push(right);

	while (!st.empty())
	{
		int right = st.top();
		st.pop();
		int left = st.top();
		st.pop();

		int mid = quicksort(a, left, right);



		if (mid - 1 > left)
		{
			st.push(left);
			st.push(mid - 1);


		}
		if (mid + 1 < right)
		{

			st.push(mid + 1);
			st.push(right);

		}







	}







}



int main()
{
	int arr[9] = { 75,9,3,65,42,13,85,67,49 };
	_quicksort(arr, 0, 8);
	for (int i = 0; i < 9; i++)
	{
		cout << arr[i] << " ";
	}



}